home *** CD-ROM | disk | FTP | other *** search
-
- opt O+,D+,L+,P=68020
-
-
- INCDIR utils:sysinc
- include "workbench:utilities/devpac/system.gs"
- INCLUDE libraries/lowlevel.i
- ; INCLUDE exec/exec_lib.i
-
- _LVOReadJoyPort EQU -$1e
-
-
- XDEF _InitLowLevel
-
- _InitLowLevel
- lea _lowlevel(pc),a1
- moveq #1,d0
- move.l 4.w,a6
- jsr _LVOOpenLibrary(a6)
- tst.l d0
- beq.s .NoLowLib
- move.l d0,_LowBase
-
- rts
-
- .NoLowLib
- moveq #-1,d0
- rts
-
-
- XDEF _CloseLowLevel
-
- _CloseLowLevel
- move.l _LowBase(pc),a1
- tst.l a1
- beq.s .Exit
- move.l 4.w,a6
- jsr _LVOCloseLibrary(a6)
- .Exit
- rts
-
-
-
- ; pass port number in d0 0-3
-
- XDEF _ReadJoy
- _ReadJoy
-
- move.l _LowBase(pc),a6
- jsr _LVOReadJoyPort(a6)
-
- move.l d0,d1
-
- and.l #JP_TYPE_MASK,d1
-
- ; bits in d1
-
-
- cmp.l #JP_TYPE_NOTAVAIL,d1
- beq.b .Empty
-
- cmp.l #JP_TYPE_GAMECTLR,d1
- beq.b .GameCtrl
-
-
-
- cmp.l #JP_TYPE_MOUSE,d1
- beq.b .Mouse
-
- cmp.l #JP_TYPE_JOYSTK,d1
- beq.b .Joystick
-
-
- ; cmp.l #JP_TYPE_UNKNOWN,d1
-
-
- ; type is an unknown type
-
- .Empty
-
- rts
-
- .GameCtrl
-
- ; these are the bit defs..
-
- ; JPF_BUTTON_BLUE Blue - Stop
- ; JPF_BUTTON_RED Red - Select
- ; JPF_BUTTON_YELLOW Yellow - Repeat
- ; JPF_BUTTON_GREEN Green - Shuffle
- ; JPF_BUTTON_FORWARD Charcoal - Forward
- ; JPF_BUTTON_REVERSE Charcoal - Reverse
- ; JPF_BUTTON_PLAY Grey - Play/Pause
- ; JPF_JOY_UP Up
- ; JPF_JOY_DOWN Down
- ; JPF_JOY_LEFT Left
- ; JPF_JOY_RIGHT Right
-
- .Joystick
-
- .Mouse
- rts
-
-
-
- Data:
-
- _LowBase
- dc.l 0
-
- _lowlevel
- dc.b 'lowlevel.library',0
- even
-
- END
-